// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "WeaponHoldBase.h"
#include "HoldSwordBase.generated.h"

/**
 * 
 */

class UHoldCustomLogicBase;

UCLASS()
class ISALONG2_API AHoldSwordBase : public AWeaponHoldBase
{
	GENERATED_BODY()

protected:
	// the static mesh for the weapon which not have sk mesh
	UStaticMeshComponent* _stMesh;

public:
	AHoldSwordBase();
	
	virtual void SetUpData(FInteractData* data, int itemType);

	virtual void OnFireBegin() override;

	virtual void OnFireEnd() override;

	virtual void OnFireAnimationEnd() override;

	virtual void OnFireAnimationFired() override;

	virtual void SetupAdditionValue(int val) override;

	virtual void Tick(float DeltaSeconds) override;

	FHoldData* GetRightData();

	IWeaponOwner* GetWeaponOwner();
protected:
	// pickUP box
	UBoxComponent* _tookUpBox;

	TArray<UHoldCustomLogicBase*> _holdLogics;

private:
	// fire delay each fire must take some time
	bool _fired;
	
};
